var config_benchs = [
 
  [ "Load-Primitive (N)",
    function(a) { return a.b; },
    [ function() { var a = new Object(); a.b = 1; return a; },
      0 ],
  ],
  [ "Load-Primitive (T)",
    function(a) { return a.b; },
    [ function() { var a = new Object(); a.b = 1; return %Taint(a); },
      0 ],
  ],

  [ "Load-JSObject (N)",
    function(a) { return a.b; },
    [ function() { var a = new Object(); a.b = new Object(); return a; },
      0 ],
  ],
  [ "Load-JSObject (T)",
    function(a) { return a.b; },
    [ function() { var a = new Object(); a.b = new Object(); return %Taint(a); },
      0 ],
  ],

  [ "KeyedLoad-Primitive (N)",
    function(a, b) { return a[b]; },
    [ function() { var a = new Object(); a.b = 1; return a; },
      "b" ],
  ],
  [ "KeyedLoad-Primitive (T)",
    function(a, b) { return a[b]; },
    [ function() { var a = new Object(); a.b = 1; return %Taint(a); },
      "b" ],
  ],

  [ "KeyedLoad-JSObject (N)",
    function(a, b) { return a[b]; },
    [ function() { var a = new Object(); a.b = new Object(); return a; },
      "b" ],
  ],
  [ "KeyedLoad-JSObject (T)",
    function(a, b) { return a[b]; },
    [ function() { var a = new Object(); a.b = new Object(); return %Taint(a); },
      "b" ],
  ],

  [ "Store-Primitive (N)",
    function(a, b) { return a.b = b; },
    [ function() { var a = new Object(); a.b = 1; return a; },
      2 ],
  ],
  [ "Store-Primitive (T)",
    function(a, b) { return a.b = b; },
    [ function() { var a = new Object(); a.b = 1; return %Taint(a); },
      2 ],
  ],

  [ "Store-JSObject (N)",
    function(a, b) { return a.b = b; },
    [ function() { var a = new Object(); a.b = new Object(); return a; },
      new Object() ],
  ],
  [ "Store-JSObject (T)",
    function(a, b) { return a.b = b; },
    [ function() { var a = new Object(); a.b = new Object(); return %Taint(a); },
      new Object() ],
  ],

  [ "KeyedStore-Primitive (N)",
    function(a, b, c) { return a[b] = c; },
    [ function() { var a = new Object(); a.b = 1; return a; },
      "b",
      2 ],
  ],
  [ "KeyedStore-Primitive (T)",
    function(a, b, c) { return a[b] = c; },
    [ function() { var a = new Object(); a.b = 1; return %Taint(a); },
      "b",
      2 ],
  ],

  [ "KeyedStore-JSObject (N)",
    function(a, b, c) { return a[b] = c; },
    [ function() { var a = new Object(); a.b = new Object(); return a; },
      "b",
      new Object() ],
  ],
  [ "KeyedStore-JSObject (T)",
    function(a, b, c) { return a[b] = c; },
    [ function() { var a = new Object(); a.b = new Object(); return %Taint(a); },
      "b",
      new Object() ],
  ],

];

benchs = benchs.concat(init_benchs(config_benchs))
